package cn.iocoder.yudao.module.crossborder.order.dal.dataobject.ordercustomeraddress;

import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 跨境电商客户地址 DO
 *
 * @author 芋道源码
 */
@TableName("crossborder_order_customer_address")
@KeySequence("crossborder_order_customer_address_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderCustomerAddressDO extends BaseDO {

    /**
     * 地址编号
     */
    @TableId
    private Long id;
    /**
     * 客户编号
     */
    private Long customerId;
    /**
     * 地址类型（1收货地址 2账单地址 3退货地址）
     */
    private Integer addressType;
    /**
     * 地址名称
     */
    private String addressName;
    /**
     * 名
     */
    private String firstName;
    /**
     * 姓
     */
    private String lastName;
    /**
     * 全名
     */
    private String fullName;
    /**
     * 公司
     */
    private String company;
    /**
     * 电话
     */
    private String phone;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 国家代码
     */
    private String countryCode;
    /**
     * 国家名称
     */
    private String countryName;
    /**
     * 省份
     */
    private String province;
    /**
     * 城市
     */
    private String city;
    /**
     * 区县
     */
    private String district;
    /**
     * 地址行1
     */
    private String addressLine1;
    /**
     * 地址行2
     */
    private String addressLine2;
    /**
     * 邮政编码
     */
    private String postalCode;
    /**
     * 纬度
     */
    private BigDecimal latitude;
    /**
     * 经度
     */
    private BigDecimal longitude;
    /**
     * 是否默认地址
     */
    private Boolean isDefault;
    /**
     * 是否已验证
     */
    private Boolean isValidated;
    /**
     * 验证来源
     */
    private String validationSource;
    /**
     * 验证时间
     */
    private LocalDateTime validationTime;
    /**
     * 使用次数
     */
    private Integer useCount;
    /**
     * 最后使用时间
     */
    private LocalDateTime lastUseTime;


}
